<?php
namespace app\home\model;
use think\Db;
use app\home\validate\Order as validate;
/**
 * 退货单
 */
class Order extends Base {
	/**
	 * 留言
	 */
	public function addBefore() {
		$data = input('post.');
		// 检查是否包含商品审核敏感词-标题，关键字，描述，促销信息，内容
		if (!ZHTCheckFilterWordsArr([$data['companyName'],$data['buyPeo'],$data['email'],$data['tel'],$data['goodsName'],$data['remark']],'')) {
			return ZHTReturn('不適切な言語が含まれているため、修正してから再送信してください。', -1);
		}
		// if (!ZHTVerifyCheck($data['verifyCode'])) {
		// 	return ZHTReturn('验证码错误!', -1);
		// }
		$validate = new validate();
		if (!$validate->scene('add')->check($data)) return ZHTReturn($validate->getError(), -1);
		$data['consortDate'] = strtotime(date('Y-m-d')); // 协调日期默认当天
		$data['urgency'] = 1; // 紧急度默认紧急
		$data['rid'] = 5; // 联络途径为'WEB'，rid=5
		$data['remark'] = '[' . $_SERVER['HTTP_HOST'] . ']' . 'ご注文前' . $data['companyName'] . ' ' . $data['email'] . ' ' . $data['goodsName'] . ' ' . $data['remark'];
		$timeArr = $this->GetMonthScope($data['consortDate']);
		$or = Db::name("order")->where("consortDate >= '{$timeArr["firstday"]}'")->where("consortDate <= '{$timeArr["lastday"]}'")->order("monthID desc")->find();
		if(empty($or)){
				$data["monthID"] = 1;
		}else{
				$data["monthID"] = (int)$or["monthID"] + 1;
		}
		$rs = $this->allowField(true)->save($data);
		if (false !== $rs) {
			return ZHTReturn('メッセージを送信しました。', 1);
		} else {
			return ZHTReturn($this->getError(), -1);
		}
	}
	/**
	 * 留言
	 */
	public function addAfter() {
		$data = input('post.');
		// 检查是否包含商品审核敏感词-标题，关键字，描述，促销信息，内容
		if (!ZHTCheckFilterWordsArr([$data['orderAddr'],$data['orderNumber'],$data['buyPeo'],$data['email'],$data['tel'],$data['goodsName'],$data['remark']],'')) {
			return ZHTReturn('不適切な言語が含まれているため、修正してから再送信してください。', -1);
		}
		if($data['orderNumber'] != ''){
			$str = strstr($data['orderNumber'], '-', TRUE);
			$st_id = 0;
			$shops_list = Db::table("m_chargeback.cb_shop_two")->where("is_del", 0)->order("st_id asc")->column('st_id','channel');
			if(isset($shops_list[$str])){
				$st_id = $shops_list[$str];
			}			
		}
		// if (!ZHTVerifyCheck($data['verifyCode'])) {
		// 	return ZHTReturn('验证码错误!', -1);
		// }
		$validate = new validate();
		if (!$validate->scene('add')->check($data)) return ZHTReturn($validate->getError(), -1);
		$data['consortDate'] = strtotime(date('Y-m-d')); // 协调日期默认当天
		$data['urgency'] = 1; // 紧急度默认紧急
		$data['st_id'] = $st_id; // 店铺id
		$data['rid'] = 5; // 联络途径为'WEB'，rid=5
		$data['remark'] = '[' . $_SERVER['HTTP_HOST'] . ']' . 'ご注文後' . $data['orderAddr'] . ' ' . $data['email'] . ' ' . $data['goodsName'] . ' ' . $data['remark'];
		$timeArr = $this->GetMonthScope($data['consortDate']);
		$or = Db::name("order")->where("consortDate >= '{$timeArr["firstday"]}'")->where("consortDate <= '{$timeArr["lastday"]}'")->order("monthID desc")->find();
		if(empty($or)){
				$data["monthID"] = 1;
		}else{
				$data["monthID"] = (int)$or["monthID"] + 1;
		}
		$rs = $this->allowField(true)->save($data);
		if (false !== $rs) {
			return ZHTReturn('メッセージを送信しました。', 1);
		} else {
			return ZHTReturn($this->getError(), -1);
		}
	}
	/**
	 * 留言
	 */
	public function addCooperate() {
		$data = input('post.');
		// 检查是否包含商品审核敏感词-标题，关键字，描述，促销信息，内容
		if (!ZHTCheckFilterWordsArr([$data['companyName'],$data['buyPeo'],$data['email'],$data['tel'],$data['remark']],'')) {
			return ZHTReturn('不適切な言語が含まれているため、修正してから再送信してください。', -1);
		}
		// if (!ZHTVerifyCheck($data['verifyCode'])) {
		// 	return ZHTReturn('验证码错误!', -1);
		// }
		$validate = new validate();
		if (!$validate->scene('add')->check($data)) return ZHTReturn($validate->getError(), -1);
		$data['consortDate'] = strtotime(date('Y-m-d')); // 协调日期默认当天
		$data['urgency'] = 1; // 紧急度默认紧急
		$data['rid'] = 5; // 联络途径为'WEB'，rid=5
		$data['st_id'] = 54; // 店铺id st_id=54 营业用
		$data['ct_id'] = 103; // 投诉内容id ct_id=103 营业用
		$data['sid'] = 17; // 解决方式id sid=17 营业用
		$data['remark'] = '[' . $_SERVER['HTTP_HOST'] . ']' . 'ビジネス関係' . $data['companyName'] . ' ' . $data['email'] . ' ' . $data['remark'] . ' ' . $data['url'];
		$timeArr = $this->GetMonthScope($data['consortDate']);
		$or = Db::name("order")->where("consortDate >= '{$timeArr["firstday"]}'")->where("consortDate <= '{$timeArr["lastday"]}'")->order("monthID desc")->find();
		if(empty($or)){
				$data["monthID"] = 1;
		}else{
				$data["monthID"] = (int)$or["monthID"] + 1;
		}
		$rs = $this->allowField(true)->save($data);
		if (false !== $rs) {
			return ZHTReturn('メッセージを送信しました。', 1);
		} else {
			return ZHTReturn($this->getError(), -1);
		}
	}
	# 获取月末和月初时间戳
	private function GetMonthScope($time){
		$date = date("Y-m", $time);
		$firstday = strtotime($date);
		$lastday = mktime(23,59,59,date('m',strtotime($date))+1,00);
		return array(
				// 输出月初和月末时间
				"firstday" => $firstday,
				"lastday" => $lastday
		);
}
}